/**
 * 分页js
 * @author sjz
 * 
 */

function doPage(pageUrl,gridId,formId,callback)
{
	var $gridId = $("#"+gridId);
	var queryString="";
	if(formId!="" && formId!=null)
	{
		queryString=$("#"+formId).formSerialize();
		$gridId.attr("queryString",queryString);
	}
	if(callback!="" && callback!=null)
	{
		$gridId.attr("callbackFunction",""+callback);
	}
	//刷新后仍然为当前页号
	var pageNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
	if(pageNo==null){pageNo="1";}
	//每页显示条数
	var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");

	$.post(pageUrl+"?pageNo="+pageNo+"&pageSize="+pageSize,queryString,function(obj){
		$("#"+gridId).html(obj).hide();
		//判断如当前页号大于查询出来的总页号  则再次查询最后一页
		var maxPageNo=$("#"+gridId+" .pageDiv1").attr("maxPageNo");
		if(parseInt(pageNo)>parseInt(maxPageNo))
		{
			pageNo=maxPageNo;
			if(pageNo==null || pageNo=="0"){pageNo="1";}
			$.post(pageUrl+"?pageNo="+pageNo+"&pageSize="+pageSize,queryString,function(obj){
				$gridId.html(obj).hide().fadeIn(300);
				if(callback!=null){callback();}
			});
		}
		else
		{
			$gridId.fadeIn(300);
			if(callback!=null){callback();}
		}
	}); 
}


function changePageSize(gridId)
{
	if(event.keyCode=="13")
	{
		var inputPageSize=$("#"+gridId+" .inputPageSize").val();
		var pgNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
		var re = /^[0-9]+?[0-9]*$/;
		if(!re.test(inputPageSize)){return;}
		if(parseInt(inputPageSize)==0){return;}
		if(parseInt(inputPageSize)<0){return;}
		if(parseInt(inputPageSize)>100){alert("请填写一个小于100的整数");return;}
		page(pgNo,gridId,inputPageSize);
	}
}

function page(pageNo,gridId,pageSize)
{
	var queryString=$("#"+gridId).attr("queryString");
	var callbackFunction=$("#"+gridId).attr("callbackFunction");
	var callback;
	if(callbackFunction!="" && callbackFunction!=null)
	{eval("callback="+callbackFunction);}
	
	var pageUrl=$("#"+gridId+" .pageDiv1").attr("pageUrl");
	$.post(pageUrl+"?pageNo="+pageNo+"&pageSize="+pageSize,queryString,function(obj){
		$("#"+gridId).html(obj).hide();
		//判断如当前页号大于查询出来的总页号  则再次查询最后一页
		var maxPageNo=$("#"+gridId+" .pageDiv1").attr("maxPageNo");
		if(parseInt(pageNo)>parseInt(maxPageNo))
		{
			pageNo=maxPageNo;
			if(pageNo==null || pageNo=="0"){pageNo="1";}
			$.post(pageUrl+"?pageNo="+pageNo+"&pageSize="+pageSize,queryString,function(obj){
				$("#"+gridId).html(obj).hide().fadeIn(300);
				if(callbackFunction!="" && callbackFunction!=null){callback();}
			});
		}
		else
		{
			$("#"+gridId).fadeIn(300);
			if(callbackFunction!="" && callbackFunction!=null){callback();}
		}
	});
}

function goHref(gridId,pageNo)
{
	var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");
	page(pageNo,gridId,pageSize);
}

function gogo(gridId)
{
	if(event.keyCode=="13")
	{
		var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");
		var inputPgNo=$("#"+gridId+" .inputPageNo").val();
		var pgNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
		var maxPageNo=$("#"+gridId+" .pageDiv1").attr("maxPageNo");
		var re = /^[0-9]+?[0-9]*$/;
		if(!re.test(inputPgNo)){return;}
		if(parseInt(inputPgNo)==0){return;}
		if(parseInt(inputPgNo)==parseInt(pgNo)){return;}
		if(parseInt(inputPgNo)<0){return;}
		if(parseInt(inputPgNo)>parseInt(maxPageNo)){return;}
		page(inputPgNo,gridId,pageSize);
	}
}

function pageFirst(gridId)
{
	var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");
	var pgNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
	if(pgNo=="1"){return;}
	page("1",gridId,pageSize);
}

function pageEnd(gridId)
{
	var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");
	var pgNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
	var pageNo=$("#"+gridId+" .pageDiv1").attr("maxPageNo");
	if(pgNo==pageNo){return;}
	page(pageNo,gridId,pageSize);
}

function pagePrev(gridId)
{
	var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");
	var pgNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
	if(pgNo=="1"){return;}
	var pageNo=parseInt(pgNo)-1;
	page(pageNo,gridId,pageSize);
}

function pageNext(gridId)
{
	var pageSize=$("#"+gridId+" .pageDiv1").attr("pageSize");
	var pgNo=$("#"+gridId+" .pageDiv1").attr("pageNo");
	var maxPageNo=$("#"+gridId+" .pageDiv1").attr("maxPageNo");
	if(pgNo==maxPageNo){return;}
	var pageNo=parseInt(pgNo)+1;
	page(pageNo,gridId,pageSize);
}

